ReflexML: UML-Based Architecture-to-Code Traceability and Consistency Checking
نویسندگان
چکیده
The decay of software architecture the divergent evolution of architecture models and the derived code is one of the reasons for a decreasing maintainability of software systems. Several approaches for architecture-to-code consistency checking exist that stop the decay by detecting a divergence after evolution steps of either the architecture or the corresponding code. Known approaches have two main insufficiencies. First, the effort to derive and maintain the consistency checks is higher than necessary or they cannot be applied a posteriori. Second, they are not well integrated into UML-based model driven engineering. In the paper we present ReflexML: A UML-embedded mapping of architecture models to code plus a rich set of predefined consistency checks based on that mapping. The mapping is described with a UML profile that allows to attach AOP type patterns to an UML component model to define its reflexion on code elements. This abolishes the two insufficiencies of current approaches. We apply ReflexML to an industry project to demonstrate its effectiveness and its capability of a seamless integration into a pre-existing UML architecture model.
منابع مشابه
Modellbasierte Extraktion, Repräsentation und Analyse von Traceability-Informationen
This work describes and evaluates TraceML, a modeling language for traceability information. Traceability is the degree to which relationships between products of a software development process can be established. Processing traceability information helps to handle the complexity of modern software development efforts and so to make software development more efficient. Up to date traceability h...
متن کاملTowards a Practical Approach to Check UML/fUML Models Consistency Using CSP
This work provides an underpinning for a systems modelling approach based on UML and fUML together. It uses UML state diagrams as a starting point for modelling system object behaviour abstractly, then refining each state diagram by adding the implementation decisions in a form of a fUML activity diagram. Maintaining behavioural consistency between each UML state diagram and its corresponding f...
متن کاملTackling the Challenges of Evolution in Multiperspective Software Design and Implementation
The design and implementation of software require the usage of different perspectives and views to cope with its static structure, dynamic behavior, and requirements. Artifacts of different views are dependent on each other and subject of frequent changes. Anticipating those changes becomes difficult, as most impact analysis approaches are not designed to work in multiperspective environments. ...
متن کاملAutomatic Generation of Java Code from UML Diagrams using UJECTOR
In recent years, the significance of automated generation of object-oriented code from UML diagrams has increased due to its benefits, such as, cost reduction and accuracy. Consistency Checking between UML diagrams, and ensuring accuracy, maintainability, efficiency, and completeness of the generated code are the main concerns in this area. This paper extends our work on a tool called UJECTOR f...
متن کاملUML Support for Designing Software Product Lines: The Package Merge Mechanism
Software product lines have become a successful but challenging approach to software reuse. Some of the problems that hinder the adoption of this development paradigm are the conceptual gap between the variability and design models, as well as the complexity of the traceability management between them. Most current development methods use UML stereotypes or modify UML to face variability and tr...
متن کامل